/**
* @author com.yuxi
* @Date 2023-10-18 23:45:30
* @description 产品
*/
package com.yuxi.model;

import com.yuxi.pubInter.BaseTimeDoMain;
import org.hibernate.validator.constraints.Length;

public class Product extends BaseTimeDoMain {
    /**
     * 排序
     */
    private Integer sortNum = 0;

    /**
     * 是否显示
     * 1:是:Y,0:否:N
     */
    private Integer showFlag = 1;

    /**
     * 是否删除
     * 1:删除:Y,0:正常:N
     */
    private Integer delFlag = 0;

    /**
     * 版本
     */
    private Integer version;

    /**
     * 产品名称
     */
    @Length(max=50,message="产品名称长度最大值50")
    private String name;

    /**
     * 型号
     */
    @Length(max=50,message="型号长度最大值50")
    private String spec;

    /**
     * 包装
     */
    @Length(max=50,message="包装长度最大值50")
    private String packing;

    /**
     * 小图
     */
    @Length(max=200,message="小图长度最大值200")
    private String smallImg;

    /**
     * 大图
     */
    @Length(max=200,message="大图长度最大值200")
    private String bigImg;

    /**
     * wap小图
     */
    @Length(max=200,message="wap小图长度最大值200")
    private String wapSmallImg;

    /**
     * wap大图
     */
    @Length(max=200,message="wap大图长度最大值200")
    private String wapBigImg;

    /**
     * 分类ID
     */
    @Length(max=32,message="分类ID长度最大值32")
    private String productTypeId;

    /**
     * 简要说明
     */
    @Length(max=2000,message="简要说明长度最大值2000")
    private String remark;

    /**
     * 广告图
     */
    @Length(max=200,message="广告图长度最大值200")
    private String banner;

    /**
     * wap 广告图
     */
    @Length(max=200,message="wap 广告图长度最大值200")
    private String wapBanner;

    /**
     * 是否推荐
     * 1:是:Y,0:否:N
     */
    private Integer recommendFlag;

    /**
     * 新产品标识
     * 1:是:Y,0:否:N
     */
    private Integer newFlag;

    /**
     * 产品简介
     */
    private String intro;

    /**
     * 产品特性
     */
    private String features;

    /**
     * 施工工艺
     */
    private String process;

     /**
     *主键
     */
    public static final String ID = "product.p_id";

     /**
     *创建时间
     */
    public static final String CREATE_TIME = "product.p_create_time";

     /**
     *更新时间
     */
    public static final String UPDATE_TIME = "product.p_update_time";

     /**
     *排序
     */
    public static final String SORT_NUM = "product.p_sort_num";

     /**
     *是否显示
     */
    public static final String SHOW_FLAG = "product.p_show_flag";

     /**
     *是否删除
     */
    public static final String DEL_FLAG = "product.p_del_flag";

     /**
     *版本
     */
    public static final String VERSION = "product.p_version";

     /**
     *产品名称
     */
    public static final String NAME = "product.p_name";

     /**
     *型号
     */
    public static final String SPEC = "product.p_spec";

     /**
     *包装
     */
    public static final String PACKING = "product.p_packing";

     /**
     *小图
     */
    public static final String SMALL_IMG = "product.p_small_img";

     /**
     *大图
     */
    public static final String BIG_IMG = "product.p_big_img";

     /**
     *wap小图
     */
    public static final String WAP_SMALL_IMG = "product.p_wap_small_img";

     /**
     *wap大图
     */
    public static final String WAP_BIG_IMG = "product.p_wap_big_img";

     /**
     *分类ID
     */
    public static final String PRODUCT_TYPE_ID = "product.p_product_type_id";

     /**
     *简要说明
     */
    public static final String REMARK = "product.p_remark";

     /**
     *广告图
     */
    public static final String BANNER = "product.p_banner";

     /**
     *wap 广告图
     */
    public static final String WAP_BANNER = "product.p_wap_banner";

     /**
     *是否推荐
     */
    public static final String RECOMMEND_FLAG = "product.p_recommend_flag";

     /**
     *新产品标识
     */
    public static final String NEW_FLAG = "product.p_new_flag";

     /**
     *产品简介
     */
    public static final String INTRO = "product.p_intro";

     /**
     *产品特性
     */
    public static final String FEATURES = "product.p_features";

     /**
     *施工工艺
     */
    public static final String PROCESS = "product.p_process";

     /**
     *填充detail key
     */
    public static final String PRODUCT_FULL_DETAIL_KEY = "PRODUCT_FULL_DETAIL";

     /**
     *填充list key
     */
    public static final String PRODUCT_FULL_LIST_KEY = "PRODUCT_FULL_LIST";

    /**
     * 获取排序
     *
     * @return p_sort_num - 排序
     */
    public Integer getSortNum() {
        return sortNum;
    }

    /**
     * 设置排序
     *
     * @param sortNum 排序
     */
    public Product setSortNum(Integer sortNum) {
        this.sortNum = sortNum;
        return this;
    }

    /**
     * 获取是否显示
     *
     * @return p_show_flag - 是否显示
     */
    public Integer getShowFlag() {
        return showFlag;
    }

    /**
     * 设置是否显示
     * 1:是:Y,0:否:N
     *
     * @param showFlag 是否显示
     */
    public Product setShowFlag(Integer showFlag) {
        this.showFlag = showFlag;
        return this;
    }

    /**
     * 获取是否删除
     *
     * @return p_del_flag - 是否删除
     */
    public Integer getDelFlag() {
        return delFlag;
    }

    /**
     * 设置是否删除
     * 1:删除:Y,0:正常:N
     *
     * @param delFlag 是否删除
     */
    public Product setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
        return this;
    }

    /**
     * 获取版本
     *
     * @return p_version - 版本
     */
    public Integer getVersion() {
        return version;
    }

    /**
     * 设置版本
     *
     * @param version 版本
     */
    public Product setVersion(Integer version) {
        this.version = version;
        return this;
    }

    /**
     * 获取产品名称
     *
     * @return p_name - 产品名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置产品名称
     *
     * @param name 产品名称
     */
    public Product setName(String name) {
        this.name = name == null ? null : name.trim();
        return this;
    }

    /**
     * 获取型号
     *
     * @return p_spec - 型号
     */
    public String getSpec() {
        return spec;
    }

    /**
     * 设置型号
     *
     * @param spec 型号
     */
    public Product setSpec(String spec) {
        this.spec = spec == null ? null : spec.trim();
        return this;
    }

    /**
     * 获取包装
     *
     * @return p_packing - 包装
     */
    public String getPacking() {
        return packing;
    }

    /**
     * 设置包装
     *
     * @param packing 包装
     */
    public Product setPacking(String packing) {
        this.packing = packing == null ? null : packing.trim();
        return this;
    }

    /**
     * 获取小图
     *
     * @return p_small_img - 小图
     */
    public String getSmallImg() {
        return smallImg;
    }

    /**
     * 设置小图
     *
     * @param smallImg 小图
     */
    public Product setSmallImg(String smallImg) {
        this.smallImg = smallImg == null ? null : smallImg.trim();
        return this;
    }

    /**
     * 获取大图
     *
     * @return p_big_img - 大图
     */
    public String getBigImg() {
        return bigImg;
    }

    /**
     * 设置大图
     *
     * @param bigImg 大图
     */
    public Product setBigImg(String bigImg) {
        this.bigImg = bigImg == null ? null : bigImg.trim();
        return this;
    }

    /**
     * 获取wap小图
     *
     * @return p_wap_small_img - wap小图
     */
    public String getWapSmallImg() {
        return wapSmallImg;
    }

    /**
     * 设置wap小图
     *
     * @param wapSmallImg wap小图
     */
    public Product setWapSmallImg(String wapSmallImg) {
        this.wapSmallImg = wapSmallImg == null ? null : wapSmallImg.trim();
        return this;
    }

    /**
     * 获取wap大图
     *
     * @return p_wap_big_img - wap大图
     */
    public String getWapBigImg() {
        return wapBigImg;
    }

    /**
     * 设置wap大图
     *
     * @param wapBigImg wap大图
     */
    public Product setWapBigImg(String wapBigImg) {
        this.wapBigImg = wapBigImg == null ? null : wapBigImg.trim();
        return this;
    }

    /**
     * 获取分类ID
     *
     * @return p_product_type_id - 分类ID
     */
    public String getProductTypeId() {
        return productTypeId;
    }

    /**
     * 设置分类ID
     *
     * @param productTypeId 分类ID
     */
    public Product setProductTypeId(String productTypeId) {
        this.productTypeId = productTypeId == null ? null : productTypeId.trim();
        return this;
    }

    /**
     * 获取简要说明
     *
     * @return p_remark - 简要说明
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置简要说明
     *
     * @param remark 简要说明
     */
    public Product setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
        return this;
    }

    /**
     * 获取广告图
     *
     * @return p_banner - 广告图
     */
    public String getBanner() {
        return banner;
    }

    /**
     * 设置广告图
     *
     * @param banner 广告图
     */
    public Product setBanner(String banner) {
        this.banner = banner == null ? null : banner.trim();
        return this;
    }

    /**
     * 获取wap 广告图
     *
     * @return p_wap_banner - wap 广告图
     */
    public String getWapBanner() {
        return wapBanner;
    }

    /**
     * 设置wap 广告图
     *
     * @param wapBanner wap 广告图
     */
    public Product setWapBanner(String wapBanner) {
        this.wapBanner = wapBanner == null ? null : wapBanner.trim();
        return this;
    }

    /**
     * 获取是否推荐
     *
     * @return p_recommend_flag - 是否推荐
     */
    public Integer getRecommendFlag() {
        return recommendFlag;
    }

    /**
     * 设置是否推荐
     * 1:是:Y,0:否:N
     *
     * @param recommendFlag 是否推荐
     */
    public Product setRecommendFlag(Integer recommendFlag) {
        this.recommendFlag = recommendFlag;
        return this;
    }

    /**
     * 获取新产品标识
     *
     * @return p_new_flag - 新产品标识
     */
    public Integer getNewFlag() {
        return newFlag;
    }

    /**
     * 设置新产品标识
     * 1:是:Y,0:否:N
     *
     * @param newFlag 新产品标识
     */
    public Product setNewFlag(Integer newFlag) {
        this.newFlag = newFlag;
        return this;
    }

    /**
     * 获取产品简介
     *
     * @return p_intro - 产品简介
     */
    public String getIntro() {
        return intro;
    }

    /**
     * 设置产品简介
     *
     * @param intro 产品简介
     */
    public Product setIntro(String intro) {
        this.intro = intro == null ? null : intro.trim();
        return this;
    }

    /**
     * 获取产品特性
     *
     * @return p_features - 产品特性
     */
    public String getFeatures() {
        return features;
    }

    /**
     * 设置产品特性
     *
     * @param features 产品特性
     */
    public Product setFeatures(String features) {
        this.features = features == null ? null : features.trim();
        return this;
    }

    /**
     * 获取施工工艺
     *
     * @return p_process - 施工工艺
     */
    public String getProcess() {
        return process;
    }

    /**
     * 设置施工工艺
     *
     * @param process 施工工艺
     */
    public Product setProcess(String process) {
        this.process = process == null ? null : process.trim();
        return this;
    }
}